<html>
<head><meta charset="utf-8"><title>Objective criteria for index squashing? · t-cargo · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/index.html">t-cargo</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html">Objective criteria for index squashing?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="235912022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235912022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235912022">(Apr 23 2021 at 21:26)</a>:</h4>
<p>Do we have an objective criteria for when we might want to start considering squashing the index like we did in the past once?</p>



<a name="235912038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235912038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235912038">(Apr 23 2021 at 21:26)</a>:</h4>
<p>(feel free to move the topic if there's a better place for this)</p>



<a name="235912055"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235912055" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235912055">(Apr 23 2021 at 21:26)</a>:</h4>
<p>I feel like we're taking a little while to clone the index repo again nowadays.</p>



<a name="235912200"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235912200" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235912200">(Apr 23 2021 at 21:28)</a>:</h4>
<p>typically no, but once the index is 80-100MB we've typically done a squash -- <a href="https://github.com/rust-lang/crates-io-cargo-teams/issues/47">https://github.com/rust-lang/crates-io-cargo-teams/issues/47</a></p>



<a name="235916001"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235916001" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Eric Huss <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235916001">(Apr 23 2021 at 22:04)</a>:</h4>
<p><span class="user-mention" data-user-id="116015">@Alex Crichton</span>  the index is about 140MB now.</p>
<p>What do you think about just using GitHub Workflows to automate the squash? I could write that, and it would just require someone to create and encrypt the access token.</p>
<p>If you think the cron job should be run on a server somewhere, then it is harder to help, since rust-lang's server infrastructure is pretty opaque to me.</p>



<a name="235916922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235916922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235916922">(Apr 23 2021 at 22:14)</a>:</h4>
<p>seems reasonable to me! I think this'd be fine to have as a workflow on... some repository... Maybe a branch of crates.io-index?</p>



<a name="235916973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235916973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235916973">(Apr 23 2021 at 22:14)</a>:</h4>
<p>or tbh maybe a branch of cargo itself...</p>



<a name="235921461"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235921461" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235921461">(Apr 23 2021 at 23:05)</a>:</h4>
<p>If it's on the index we don't need any new token, right? The default provided GITHUB_TOKEN should work</p>



<a name="235923030"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235923030" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Eric Huss <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235923030">(Apr 23 2021 at 23:27)</a>:</h4>
<p>Yea, if it lives in the crates.io-index repo.  Someone will need to create a branch, but I think that's all that will be needed.  </p>
<p>When I get a chance, I'll look at writing and testing the workflow.  Probably not within the next week or two, as there are some high priority cargo issues I think I should work on.</p>



<a name="235923639"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235923639" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jon Gjengset <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235923639">(Apr 23 2021 at 23:35)</a>:</h4>
<p>I wonder how squashing affects people using <a href="https://crates.io/crates/crates-index-diff/"><code>crates-index-diff</code></a> <span aria-label="thinking" class="emoji emoji-1f914" role="img" title="thinking">:thinking:</span> Given that that's me, I guess I should probably look into that sooner rather than later <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="235924038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235924038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235924038">(Apr 23 2021 at 23:41)</a>:</h4>
<p><a href="http://docs.rs">docs.rs</a> uses it and hasn't had troubles, so I assume it handles it somehow</p>



<a name="235924199"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/246057-t-cargo/topic/Objective%20criteria%20for%20index%20squashing%3F/near/235924199" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jon Gjengset <a href="https://rust-lang.github.io/zulip_archive/stream/246057-t-cargo/topic/Objective.20criteria.20for.20index.20squashing.3F.html#235924199">(Apr 23 2021 at 23:43)</a>:</h4>
<p>Ah, looks like it just calls into <code>git-diff-tree</code>, so as long as both the old and new commits are still available in the _local_ repository, everything should be fine.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>